<#-- 
 
 crea una clase para c# para la tabla  ${table}...
 Author : Luis Molina...
 
 -->
<#-- variables used internally by the generator... -->
<#assign nameFile="aspx">
<#assign extensionFile="cs">
<#assign languageGenerated="c#">
<#assign description="c#">
<#assign targetDirectory="clases">
<#assign appliesToAllTables="true">
<#-- END variables used internally by the generator... -->

   
   
     private static ${table} ${table}x = new ${table}();
      
      
        protected void Page_Load(object sender, EventArgs e)
        {
                        
                if (!Page.IsPostBack)
                {
                    int id = sf.Entero(Request["id"]);
                    if (id != 0)
                    {
                        cargardatos(id);
                     }                  

                }

            vacios();
        }
                
        private void vacios()
        {
		
            
        }
        
        private void cargardatos(int id )
        {
            if (<%=tablaActual.nombre%>.exists(id )
            {
                <%=tablaActual.nombre%>x = <%=tablaActual.nombre%>.get<%=tablaActual.nombre%>(id );
				
				<#list table.getFields() as field>
	 
					 <#-- segun el tipo de campo...   -->
					 <#switch field.getType()>
						  <#case "_int">
							 private int _${field};
							 <#break>
						  <#case "_string">
							 If (<%=tablaActual.nombre%>x.txt<%=campox.nombre %>! = "")
                            txt<%=campox.nombre %>.Text = <%=tablaActual.nombre%>x.<%=campox.nombre %> ;
							 <#break>
						  <#case "_date">
							 If (sf.esfecha(<%=tablaActual.nombre%>x.<%=campox.nombre %>)) 
								txt<%=campox.nombre %>.Text =  <%=tablaActual.nombre%>x.<%=campox.nombre %> ;
							 <#break>
						  <<#case "_boolean">
							 private bool _${field};
							 <#break>
						  <#default>
							 If (<%=tablaActual.nombre%>x.txt<%=campox.nombre %>! = "")
								txt<%=campox.nombre %>.Text = <%=tablaActual.nombre%>x.<%=campox.nombre %> ;
					</#switch>  
				 
				</#list>
              
             btnInsertar.Text = "Modificar";
             
            }
        }

        protected void btnInsertar_Click(object sender, EventArgs e)
        {
            
            
                
                <% 
for each campox as campo in tablaActual.campos
		contador+=1
		
		if  campox.seleccionado and not campox.isKey then
		
                            Select Case campox.tipo
                                Case dataTypes.dataType.fecha, dataTypes.dataType.fechaLarga
                                    %>
                                     <%=tablaActual.nombre%>x.<%=campox.nombre %> = sf.Cadena(txt<%=campox.nombre %>.Text);
                                    <% 
                                Case dataTypes.dataType.texto
                                    Select Case campox.lenght
                                        Case Is > 250
                                            ' es un freetextbox
                                            %>
                                            <%=tablaActual.nombre%>x.<%=campox.nombre %> = sf.html2text(sf.SafeSql(FreeTextBox1.Text));
            <%
                                        Case Else
                                            %>
                                            <%=tablaActual.nombre%>x.<%=campox.nombre %> = txt<%=campox.nombre %>.Text;
                                            <%
                                        End Select
                                            
                                            
                                    Case dataTypes.dataType.entero, dataTypes.dataType.enteroLargo, dataTypes.dataType.enteroSingle
                                            %>
                                             <%=tablaActual.nombre%>x.<%=campox.nombre %> = sf.Entero(txt<%=campox.nombre %>.text);
               
                                            <%
                                    Case dataTypes.dataType.imagen
                                            %>
            if (up<%=campox.nombre %>.PostedFile == null) { }
                else
                {
                    if (up<%=campox.nombre %>.FileName != "")
                    {
                        if (!System.IO.File.Exists(Server.MapPath("../bdimages/") + up<%=campox.nombre %>.FileName))
                        {
                            <%=tablaActual.nombre%>x.<%=campox.nombre %> = "../bdimages/" + up<%=campox.nombre %>.FileName;
                            up<%=campox.nombre %>.SaveAs(Server.MapPath("../bdimages/") + up<%=campox.nombre %>.FileName);
                            img<%=campox.nombre %>.ImageUrl = <%=tablaActual.nombre%>x.<%=campox.nombre %>;
                            img<%=campox.nombre %>.Visible = true;
                            but<%=campox.nombre %>.Visible = true;
                            up<%=campox.nombre %>.Visible = false;
                        }
                        else
                            mensaje("El archivo ya existe, elija otro nombre");
                    }
 
                }
                                            <%
                                 
                                End Select
		end if
next
%>
                
                if (btnInsertar.Text == "Modificar")
                {
                    <%=tablaActual.nombre%>.Update(<%=tablaActual.nombre%>x);
                }
                else
                {
                    <%=tablaActual.nombre%>.Insert(<%=tablaActual.nombre%>x);
                    Response.Redirect("../<%=tablaActual.nombre%>_dir/listado_<%=tablaActual.nombre%>.aspx");
                }
            }
            else
            {
                mensaje("Rellene datos obligatorios");
            }
        }

        private void mensaje(string p)
        {
            lblinfo.Visible = true;
            lblinfo.Text = p;
        }

        <%--protected void btnborrarimagen_Click(object sender, EventArgs e)
        {
            noticias.setImagen(<%=tablaActual.nombre%>x.idnoticias,"");
            imgNoticia.Visible = false;
            btnborrarimagen.Visible = false;
            string a = Server.MapPath(<%=tablaActual.nombre%>x.imagen);
            if (System.IO.File.Exists(Server.MapPath(imgNoticia.ImageUrl.ToString())))
                System.IO.File.Delete(Server.MapPath(imgNoticia.ImageUrl.ToString()));
            FileUploadImagen.Visible = true;
        }--%>
   
   
   
     

 


  
